<?php 


namespace app\admin\controller;

use think\Controller;
use think\Db;
use think\Request;
use app\admin\controller\Admin;
use think\Paginator;



class news extends Admin
{
    /**
     * [index 加载首页]
     */
    public function index()
    {
        $news = db('_news_dynamic')
            ->paginate(3);
        //var_dump($news);die;
        return view('admin@news/index',[
            'news' => $news
        ]);
    }



    /**
     * [add 加载添加新闻页面]
     */
    public function add()
    {
        
        return view('admin@news/add');
    }



    /**
     * [doadd 执行添加新闻]
     */
    public function doadd()
    {
        $res = input('post.');
        // 获取表单上传文件 例如上传了001.jpg
        $file = request()->file('image');
        if (!$file) {
            $this->error('请先上传图片');
        }
        // 移动到框架应用根目录/public/uploads/ 目录下
        if($file){

            $info = $file->validate(['size'=>1024*1024*3,'ext'=>'jpg,png,gif'])->move(ROOT_PATH .'public' . DS . 'uploads');
            if($info){
                // 成功上传后 获取上传信息
                // 输出 jpg
                //echo $info->getExtension();
                // 输出 20160820/42a79759f284b767dfcb2a0197904287.jpg
                //echo $info->getSaveName();
                // 输出 42a79759f284b767dfcb2a0197904287.jpg
                //echo $info->getFilename();
            } else {
                // 上传失败获取错误信息
                $this->error($file->getError());
            }
        }

        //var_dump($info->getSaveName());die;
        
        //var_dump($res);die;
        // 20170929xxx.jpg  =>  ../Uploads/2017/09/29/20170929xxx.jpg
        

        //20181009\b503fa934c8a87ac4db86a5c08956d54.jpg
        $url = '/uploads/';
        $url .= substr($info->getSaveName(), 0, 8).'/';
        $url .= $info->getFilename();
        $res['image'] = $url;
        
        //var_dump($res);die;
        $result = db('_news_dynamic')
                  ->insert($res);

        if ($result > 0) {
            return $this->success('添加成功!', url('admin/news/index'));
        } else {
            return $this->error('添加失败!');
        }
    }

    /**
     * [edit 加载编辑新闻页面]
     */
    public function edit()
    {
        $res = input('param.');
        
        //var_dump($res);die;
        $id = $res['id'];
        $res = db('_news_dynamic')->field(['id','content','name','title','image','status'])->find($id);
        //var_dump($res);die;
        return view('admin@news/edit',[
            'res' => $res
        ]);

    }


    /**
     * [doedit 执行编辑新闻]
     */
    public function doedit()
    {
        $res = input('param.');
        
        //var_dump($res);die;
        $id = $res['id'];
        $select = db('_news_dynamic')->field(['image','status'])->find($id);
        if (!$select['image']) {
            // 获取表单上传文件 例如上传了001.jpg
            $file = request()->file('image');
            if (!$file) {
                $this->error('请先上传图片');
            }
            // 移动到框架应用根目录/public/uploads/ 目录下
            if($file){

                $info = $file->validate(['size'=>1024*1024*3,'ext'=>'jpg,png,gif'])->move(ROOT_PATH .'public' . DS . 'uploads');
                if($info){
                    // 成功上传后 获取上传信息
                    // 输出 jpg
                    //echo $info->getExtension();
                    // 输出 20160820/42a79759f284b767dfcb2a0197904287.jpg
                    //echo $info->getSaveName();
                    // 输出 42a79759f284b767dfcb2a0197904287.jpg
                    //echo $info->getFilename();
                } else {
                    // 上传失败获取错误信息
                    $this->error($file->getError());
                }
            }

            //var_dump($info->getSaveName());die;
            
            //var_dump($res);die;
            // 20170929xxx.jpg  =>  ../Uploads/2017/09/29/20170929xxx.jpg
            

            //20181009\b503fa934c8a87ac4db86a5c08956d54.jpg
            $url = '/uploads/';
            $url .= substr($info->getSaveName(), 0, 8).'/';
            $url .= $info->getFilename();
            $res['image'] = $url;
        }

        $result = db('_news_dynamic')->where('id='.$id)->update($res);
        //var_dump($res);die;
        if ($result > 0) {
            return $this->success('编辑成功!', url('admin/news/index'));
        } else {
            return $this->error('你未修改任何内容');
        }

    }


    /**Ajax 删除
     * [delete 执行安全计划删除]
     */
    public function delete($id)
    {
        $result = db('_news_dynamic')->delete($id);
        // var_dump($result); exit;
        if ($result > 0) {
            $info['status'] = true;
            $info['id'] = $id;
            $info['info'] = 'ID为:'.$id.'的新闻动态删除成功!';
        } else {
            $info['status'] = false;
            $info['id'] = $id;
            $info['info'] = 'ID为:'.$id.'的新闻动态删除失败!';
        }

        return json($info);
    }



    public function _empty(Request $request)
    {
        return view('/error');
    }












}


 ?>